import Vue from "vue";
import Router from "vue-router";

Vue.use(Router);

/* Layout */
import Layout from "@/layout";

/* Router Modules */
import componentsRouter from "./modules/components";
import chartsRouter from "./modules/charts";
import tableRouter from "./modules/table";
import nestedRouter from "./modules/nested";
import { title } from "@/settings";

/**
 * Note: sub-menu only appear when route children.length >= 1
 * Detail see: https://panjiachen.github.io/vue-element-admin-site/guide/essentials/router-and-nav.html
 *
 * hidden: true                   if set true, item will not show in the sidebar(default is false)
 * alwaysShow: true               if set true, will always show the root menu
 *                                if not set alwaysShow, when item has more than one children route,
 *                                it will becomes nested mode, otherwise not show the root menu
 * redirect: noRedirect           if set noRedirect will no redirect in the breadcrumb
 * name:'router-name'             the name is used by <keep-alive> (must set!!!)
 * meta : {
    roles: ['admin','editor']    control the page roles (you can set multiple roles)
    title: 'title'               the name show in sidebar and breadcrumb (recommend set)
    icon: 'svg-name'/'el-icon-x' the icon show in the sidebar
    noCache: true                if set true, the page will no be cached(default is false)
    affix: true                  if set true, the tag will affix in the tags-view
    breadcrumb: false            if set false, the item will hidden in breadcrumb(default is true)
    activeMenu: '/example/list'  if set path, the sidebar will highlight the path you set
  }
 */

/**
 * constantRoutes
 * a base page that does not have permission requirements
 * all roles can be accessed
 */
export const constantRoutes = [
  {
    path: "/balanceAnalysis",
    component: Layout,
    name: "平衡分析",
    meta: { title: "平衡分析" },
    redirect: "warterBalanceAnalysis",
    children: [
      {
        meta: { title: "水平衡分析" },
        path: "warterBalanceAnalysis",
        component: () => import("@/views/balanceAnalysis/warterBalance/index"),
      },
    ],
  },
  //报警分析
  {
    path: "/warningAnalysis",
    component: Layout,
    name: "报警数据分析",
    meta: { title: "报警数据分析" },
    redirect: "validWarningAnalysis",
    children: [
      {
        meta: { title: "有效报警分析" },
        path: "validWarningAnalysis",
        component: () =>
          import("@/views/warningAnalysis/validWarningAnalysis/index"),
      },
      {
        meta: { title: "报警检测" },
        path: "warningDetect",
        component: () => import("@/views/warningAnalysis/warningDetect/index"),
      },
      {
        meta: { title: "报警参数分析" },
        path: "paramsDetect",
        component: () => import("@/views/warningAnalysis/paramsDetect/index"),
      },
      {
        meta: { title: "报警类型统计" },
        path: "warningType",
        component: () =>
          import("@/views/warningAnalysis/warningTypeAnalysis/index"),
      },
      {
        meta: { title: "报警检测" },
        path: "warningDetect2",
        component: () => import("@/views/warningAnalysis/warningDetect/index"),
      },
    ],
  },

  // 报警管理
  {
    path: "/alarmManagement",
    component: Layout,
    name: "alarmManagement",
    meta: { title: "报警案例" },
    redirect: "/alarmManagement/confinedStation",
    children: [
      // 密闭站
      {
        meta: { title: "密闭站" },
        path: "/alarmManagement/confinedStation",
        component: () => import("@/views/alarmManagement/confinedStation"),
        children: [
          // 密闭站1
          {
            meta: { title: "密闭站1", title1: "密闭站1" },
            path: "/alarmManagement/confinedStation/confinedStation1",
            component: () =>
              import(
                "@/views/alarmManagement/confinedStation/confinedStation1"
              ),
            children: [
              // 首页
              {
                meta: { title: "首页", title1: "首页" },
                path: "/alarmManagement/confinedStation/confinedStation1/home",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/Home"
                  ),
              },
              // 报警检查
              {
                meta: { title: "报警检查", title1: "报警检查" },
                path: "/alarmManagement/confinedStation/confinedStation1/alarmCheck",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/alarmCheck"
                  ),
              },
              // 检查步骤1
              {
                meta: { title: "检查步骤1", title1: "检查步骤1" },
                path: "/alarmManagement/confinedStation/confinedStation1/check1",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/check1"
                  ),
              },
              // 检查步骤2
              {
                meta: { title: "检查步骤2", title1: "检查步骤2" },
                path: "/alarmManagement/confinedStation/confinedStation1/check2",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/check2"
                  ),
              },
              // 检查步骤3
              {
                meta: { title: "检查步骤3", title1: "检查步骤3" },
                path: "/alarmManagement/confinedStation/confinedStation1/check3",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/check3"
                  ),
              },
              // 检查步骤4
              {
                meta: { title: "检查步骤4", title1: "检查步骤4" },
                path: "/alarmManagement/confinedStation/confinedStation1/check4",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/check4"
                  ),
              },
              // 设备数据
              {
                meta: { title: "设备数据", title1: "设备数据" },
                path: "/alarmManagement/confinedStation/confinedStation1/deviceData",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/deviceData"
                  ),
              },
              // 参数优化
              {
                meta: { title: "参数优化", title1: "参数优化" },
                path: "/alarmManagement/confinedStation/confinedStation1/parameterOptimization",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation1/parameterOptimization"
                  ),
              },
            ],
          },

          // 密闭站2
          {
            meta: { title: "密闭站2", title1: "密闭站2" },
            path: "/alarmManagement/confinedStation/confinedStation2",
            component: () =>
              import(
                "@/views/alarmManagement/confinedStation/confinedStation2"
              ),
            children: [
              // 首页
              {
                meta: { title: "首页", title1: "首页" },
                path: "/alarmManagement/confinedStation/confinedStation2/home",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation2/Home"
                  ),
              },
              // 报警检查
              {
                meta: { title: "报警检查", title1: "报警检查" },
                path: "/alarmManagement/confinedStation/confinedStation2/alarmCheck",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation2/alarmCheck"
                  ),
              },
              // 检查步骤1
              {
                meta: { title: "检查步骤1", title1: "检查步骤1" },
                path: "/alarmManagement/confinedStation/confinedStation2/check1",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation2/check1"
                  ),
              },
              // 检查步骤2
              {
                meta: { title: "检查步骤2", title1: "检查步骤2" },
                path: "/alarmManagement/confinedStation/confinedStation2/check2",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation2/check2"
                  ),
              },
              // 检查步骤3
              {
                meta: { title: "检查步骤3", title1: "检查步骤3" },
                path: "/alarmManagement/confinedStation/confinedStation2/check3",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation2/check3"
                  ),
              },
              // 设备数据
              {
                meta: { title: "设备数据", title1: "设备数据" },
                path: "/alarmManagement/confinedStation/confinedStation2/deviceData",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation2/deviceData"
                  ),
              },
              // 参数优化
              {
                meta: { title: "参数优化", title1: "参数优化" },
                path: "/alarmManagement/confinedStation/confinedStation2/parameterOptimization",
                component: () =>
                  import(
                    "@/views/alarmManagement/confinedStation/confinedStation2/parameterOptimization"
                  ),
              },
            ],
          },
        ],
      },
      // 特一联
      {
        meta: { title: "特一联" },
        path: "/alarmManagement/specialJoint",
        component: () => import("@/views/alarmManagement/specialJoint"),
        children: [
          // 调储罐液位
          {
            meta: { title: "调储罐液位", title1: "调储罐液位" },
            path: "/alarmManagement/specialJoint/tankLevel",
            component: () =>
              import("@/views/alarmManagement/specialJoint/tankLevel"),
          },
          // 报警检查
          {
            meta: { title: "报警检查", title1: "报警检查" },
            path: "/alarmManagement/specialJoint/alarmCheck",
            component: () =>
              import("@/views/alarmManagement/specialJoint/alarmCheck"),
          },
          // 检查步骤1
          {
            meta: { title: "检查步骤1", title1: "后端污水使用情况" },
            path: "/alarmManagement/specialJoint/stepCheck1",
            component: () =>
              import("@/views/alarmManagement/specialJoint/stepCheck1"),
          },
          // 检查步骤2-1
          {
            meta: { title: "检查步骤2-1", title1: "系统故障检查" },
            path: "/alarmManagement/specialJoint/stepCheck2-1",
            component: () =>
              import("@/views/alarmManagement/specialJoint/stepCheck2-1"),
          },
          // 检查步骤2-2
          {
            meta: { title: "检查步骤2-2", title1: "系统故障检查" },
            path: "/alarmManagement/specialJoint/stepCheck2-2",
            component: () =>
              import("@/views/alarmManagement/specialJoint/stepCheck2-2"),
          },
          // 检查步骤2-3
          {
            meta: { title: "检查步骤2-3", title1: "系统故障检查" },
            path: "/alarmManagement/specialJoint/stepCheck2-3",
            component: () =>
              import("@/views/alarmManagement/specialJoint/stepCheck2-3"),
          },
          // 检查步骤3
          {
            meta: { title: "检查步骤3", title1: "后端污水使用需求检查" },
            path: "/alarmManagement/specialJoint/stepCheck3",
            component: () =>
              import("@/views/alarmManagement/specialJoint/stepCheck3"),
          },
          // 设备数据
          {
            meta: { title: "设备数据", title1: "设备数据" },
            path: "/alarmManagement/specialJoint/deviceData",
            component: () =>
              import("@/views/alarmManagement/specialJoint/deviceData"),
          },
          // 参数优化
          {
            meta: { title: "参数优化", title1: "参数优化" },
            path: "/alarmManagement/specialJoint/parameterOptimization",
            component: () =>
              import(
                "@/views/alarmManagement/specialJoint/parameterOptimization"
              ),
          },
        ],
      },
      // 特二联
      {
        meta: { title: "特二联" },
        path: "/alarmManagement/specialTwo-link",
        component: () => import("@/views/alarmManagement/specialTwo-link"),
        children: [
          // 首页
          {
            meta: { title: "密闭1", title1: "报警信息" },
            path: "/alarmManagement/specialTwo-link/Home",
            component: () =>
              import("@/views/alarmManagement/specialTwo-link/Home"),
          },
          // 报警检查
          {
            meta: { title: "报警检查", title1: "报警检查" },
            path: "/alarmManagement/specialTwo-link/alarmCheck",
            component: () =>
              import("@/views/alarmManagement/specialTwo-link/alarmCheck"),
          },
          // 检查步骤1
          {
            meta: { title: "检查步骤1", title1: "控制阀检查" },
            path: "/alarmManagement/specialTwo-link/check1",
            component: () =>
              import("@/views/alarmManagement/specialTwo-link/check1"),
          },
          // 步骤2
          {
            meta: { title: "检查步骤2", title1: "出汽管线检查" },
            path: "/alarmManagement/specialTwo-link/check2",
            component: () =>
              import("@/views/alarmManagement/specialTwo-link/check2"),
          },
          // 步骤3
          {
            meta: { title: "检查步骤3", title1: "冷源量调整" },
            path: "/alarmManagement/specialTwo-link/check3",
            component: () =>
              import("@/views/alarmManagement/specialTwo-link/check3"),
          },
          // 步骤4
          {
            meta: { title: "检查步骤4", title1: "外输频率调整" },
            path: "/alarmManagement/specialTwo-link/check4",
            component: () =>
              import("@/views/alarmManagement/specialTwo-link/check4"),
          },
          // 设备数据
          {
            meta: { title: "设备数据", title1: "设备数据" },
            path: "/alarmManagement/specialTwo-link/deviceData",
            component: () =>
              import("@/views/alarmManagement/specialTwo-link/deviceData"),
          },
          // 参数优化
          {
            meta: { title: "参数优化", title1: "参数优化" },
            path: "/alarmManagement/specialTwo-link/parameterOptimization",
            component: () =>
              import(
                "@/views/alarmManagement/specialTwo-link/parameterOptimization"
              ),
          },
        ],
      },
    ],
  },

  // 各站指标分析
  {
    path: "/stationsAnalysis",
    component: Layout,
    name: "stationsAnalysis",
    meta: { title: "各站指标分析" },
    redirect: "/stationsAnalysis/one",
    children: [
      // 1号
      {
        meta: { title: "一号稠油处理站" },
        path: "/stationsAnalysis/one",
        component: () => import("@/views/stationsAnalysis/one/one.vue"),
      },
      // 2号
      {
        meta: { title: "二号稠油处理站" },
        path: "/stationsAnalysis/two",
        component: () => import("@/views/stationsAnalysis/two/two"),
      },
      // 3号
      {
        meta: { title: "稀油注输联合站" },
        path: "/stationsAnalysis/three",
        component: () => import("@/views/stationsAnalysis/three/three"),
      },
      // 4号
      {
        meta: { title: "处理关键药剂" },
        path: "/stationsAnalysis/four",
        component: () => import("@/views/stationsAnalysis/four/four"),
      },
    ],
  },
  {
    path: "/yieldAnalysis",
    component: Layout,
    name: "产量分析",
    meta: { title: "产量分析" },
    redirect: "warterBalanceAnalysis",
    children: [
      {
        meta: { title: "产量数据及预警" },
        path: "ProductionDataAndWarning",
        component: () =>
          import("@/views/yieldAnalysis/productionDataAndWarning/index"),
      },
      {
        meta: { title: "产量原因分析" },
        path: "warterBalanceAnalysis2",
        component: () =>
          import("@/views/yieldAnalysis/yieldReasonsAnalysis/index"),
      },
    ],
  },
  //数据报表
  {
    path: "/dataReport",
    component: Layout,
    name: "数据报表",
    meta: { title: "数据报表" },
    redirect: "medicament",
    children: [
      {
        meta: { title: "药剂台账" },
        path: "medicament",
        component: () => import("@/views/dataReport/medicament/index.vue"),
      },
      {
        meta: { title: "处理站关键药剂浓度指标" },
        path: "waterData",
        component: () => import("@/views/dataReport/waterData/index.vue"),
      },
      {
        meta: { title: "二号稠油处理站综合日报" },
        path: "secondDayReport",
        component: () => import("@/views/dataReport/secondDayReport/index.vue"),
      },
      {
        meta: { title: "二号稠油处理站综合月报" },
        path: "secondMonthReport",
        component: () =>
          import("@/views/dataReport/secondMonthReport/index.vue"),
      },
      {
        meta: { title: "稀油注输处理站综合日报" },
        path: "thinOilDayReport",
        component: () =>
          import("@/views/dataReport/thinOilDayReport/index.vue"),
      },
      {
        meta: { title: "稀油注输处理站综合月报" },
        path: "thinOilMonthReport",
        component: () =>
          import("@/views/dataReport/thinOilMonthReport/index.vue"),
      },
      {
        meta: { title: "一号稠油处理站台账" },
        path: "firstReport",
        component: () => import("@/views/dataReport/firstReport/index.vue"),
      },
    ],
  },

  //工艺流程
  {
    path: "/technologicalProcess",
    component: Layout,
    name: "工艺流程",
    meta: { title: "工艺流程" },
    redirect: "leakageWarning",
    children: [
      {
        meta: { title: "内漏预警" },
        path: "leakageWarning",
        component: () =>
          import("@/views/technologicalProcess/leakageWarning/index"),
      },
      {
        meta: { title: "内漏验证" },
        path: "leakageDetect",
        component: () =>
          import("@/views/technologicalProcess/leakageDetect/index"),
      },
    ],
  },
  //限制值管理
  {
    path: "/dataManage",
    component: Layout,
    meta: { title: "限制值数据管理" },
    redirect: "indicator",
    children: [
      {
        path: "indicator",
        meta: { title: "限制值管理" },
        component: () => import("@/views/dataManage/indicator/index"),
      },
    ],
  },


  {
    path: "/redirect",
    component: Layout,
    hidden: true,
    children: [
      {
        path: "/redirect/:path(.*)",
        component: () => import("@/views/redirect/index"),
      },
    ],
  },
  {
    path: "/login",
    component: () => import("@/views/login/index"),
    hidden: true,
  },
  {
    path: "/auth-redirect",
    component: () => import("@/views/login/auth-redirect"),
    hidden: true,
  },
  {
    path: "/404",
    component: () => import("@/views/error-page/404"),
    hidden: true,
  },
  {
    path: "/401",
    component: () => import("@/views/error-page/401"),
    hidden: true,
  },
  {
    path: "/",
    component: Layout,
    redirect: "/dashboard",
    children: [
      {
        path: "dashboard",
        component: () => import("@/views/dashboard/index"),
        name: "Dashboard",
        meta: { title: "Dashboard", icon: "dashboard", affix: true },
      },
    ],
  },
  // {
  //   path: "/documentation",
  //   component: Layout,
  //   children: [
  //     {
  //       path: "index",
  //       component: () => import("@/views/documentation/index"),
  //       name: "Documentation",
  //       meta: { title: "Documentation", icon: "documentation", affix: true },
  //     },
  //   ],
  // },
  // {
  //   path: "/guide",
  //   component: Layout,
  //   redirect: "/guide/index",
  //   children: [
  //     {
  //       path: "index",
  //       component: () => import("@/views/guide/index"),
  //       name: "Guide",
  //       meta: { title: "Guide", icon: "guide", noCache: true },
  //     },
  //   ],
  // },
  {
    path: "/profile",
    component: Layout,
    redirect: "/profile/index",
    hidden: true,
    children: [
      {
        path: "index",
        component: () => import("@/views/profile/index"),
        name: "Profile",
        meta: { title: "Profile", icon: "user", noCache: true },
      },
    ],
  },
];

/**
 * asyncRoutes
 * the routes that need to be dynamically loaded based on user roles
 */
// export const asyncRoutes = [
//   {
//     path: '/permission',
//     component: Layout,
//     redirect: '/permission/page',
//     alwaysShow: true, // will always show the root menu
//     name: 'Permission',
//     meta: {
//       title: 'Permission',
//       icon: 'lock',
//       roles: ['admin', 'editor'] // you can set roles in root nav
//     },
//     children: [
//       {
//         path: 'page',
//         component: () => import('@/views/permission/page'),
//         name: 'PagePermission',
//         meta: {
//           title: 'Page Permission',
//           roles: ['admin'] // or you can only set roles in sub nav
//         }
//       },
//       {
//         path: 'directive',
//         component: () => import('@/views/permission/directive'),
//         name: 'DirectivePermission',
//         meta: {
//           title: 'Directive Permission'
//           // if do not set roles, means: this page does not require permission
//         }
//       },
//       {
//         path: 'role',
//         component: () => import('@/views/permission/role'),
//         name: 'RolePermission',
//         meta: {
//           title: 'Role Permission',
//           roles: ['admin']
//         }
//       }
//     ]
//   },

//   {
//     path: '/icon',
//     component: Layout,
//     children: [
//       {
//         path: 'index',
//         component: () => import('@/views/icons/index'),
//         name: 'Icons',
//         meta: { title: 'Icons', icon: 'icon', noCache: true }
//       }
//     ]
//   },

//   /** when your routing map is too long, you can split it into small modules **/
//   componentsRouter,
//   chartsRouter,
//   nestedRouter,
//   tableRouter,

//   {
//     path: '/example',
//     component: Layout,
//     redirect: '/example/list',
//     name: 'Example',
//     meta: {
//       title: 'Example',
//       icon: 'el-icon-s-help'
//     },
//     children: [
//       {
//         path: 'create',
//         component: () => import('@/views/example/create'),
//         name: 'CreateArticle',
//         meta: { title: 'Create Article', icon: 'edit' }
//       },
//       {
//         path: 'edit/:id(\\d+)',
//         component: () => import('@/views/example/edit'),
//         name: 'EditArticle',
//         meta: { title: 'Edit Article', noCache: true, activeMenu: '/example/list' },
//         hidden: true
//       },
//       {
//         path: 'list',
//         component: () => import('@/views/example/list'),
//         name: 'ArticleList',
//         meta: { title: 'Article List', icon: 'list' }
//       }
//     ]
//   },

//   {
//     path: '/tab',
//     component: Layout,
//     children: [
//       {
//         path: 'index',
//         component: () => import('@/views/tab/index'),
//         name: 'Tab',
//         meta: { title: 'Tab', icon: 'tab' }
//       }
//     ]
//   },

//   {
//     path: '/error',
//     component: Layout,
//     redirect: 'noRedirect',
//     name: 'ErrorPages',
//     meta: {
//       title: 'Error Pages',
//       icon: '404'
//     },
//     children: [
//       {
//         path: '401',
//         component: () => import('@/views/error-page/401'),
//         name: 'Page401',
//         meta: { title: '401', noCache: true }
//       },
//       {
//         path: '404',
//         component: () => import('@/views/error-page/404'),
//         name: 'Page404',
//         meta: { title: '404', noCache: true }
//       }
//     ]
//   },

//   {
//     path: '/error-log',
//     component: Layout,
//     children: [
//       {
//         path: 'log',
//         component: () => import('@/views/error-log/index'),
//         name: 'ErrorLog',
//         meta: { title: 'Error Log', icon: 'bug' }
//       }
//     ]
//   },

//   {
//     path: '/excel',
//     component: Layout,
//     redirect: '/excel/export-excel',
//     name: 'Excel',
//     meta: {
//       title: 'Excel',
//       icon: 'excel'
//     },
//     children: [
//       {
//         path: 'export-excel',
//         component: () => import('@/views/excel/export-excel'),
//         name: 'ExportExcel',
//         meta: { title: 'Export Excel' }
//       },
//       {
//         path: 'export-selected-excel',
//         component: () => import('@/views/excel/select-excel'),
//         name: 'SelectExcel',
//         meta: { title: 'Export Selected' }
//       },
//       {
//         path: 'export-merge-header',
//         component: () => import('@/views/excel/merge-header'),
//         name: 'MergeHeader',
//         meta: { title: 'Merge Header' }
//       },
//       {
//         path: 'upload-excel',
//         component: () => import('@/views/excel/upload-excel'),
//         name: 'UploadExcel',
//         meta: { title: 'Upload Excel' }
//       }
//     ]
//   },

//   {
//     path: '/zip',
//     component: Layout,
//     redirect: '/zip/download',
//     alwaysShow: true,
//     name: 'Zip',
//     meta: { title: 'Zip', icon: 'zip' },
//     children: [
//       {
//         path: 'download',
//         component: () => import('@/views/zip/index'),
//         name: 'ExportZip',
//         meta: { title: 'Export Zip' }
//       }
//     ]
//   },

//   {
//     path: '/pdf',
//     component: Layout,
//     redirect: '/pdf/index',
//     children: [
//       {
//         path: 'index',
//         component: () => import('@/views/pdf/index'),
//         name: 'PDF',
//         meta: { title: 'PDF', icon: 'pdf' }
//       }
//     ]
//   },
//   {
//     path: '/pdf/download',
//     component: () => import('@/views/pdf/download'),
//     hidden: true
//   },

//   {
//     path: '/theme',
//     component: Layout,
//     children: [
//       {
//         path: 'index',
//         component: () => import('@/views/theme/index'),
//         name: 'Theme',
//         meta: { title: 'Theme', icon: 'theme' }
//       }
//     ]
//   },

//   {
//     path: '/clipboard',
//     component: Layout,
//     children: [
//       {
//         path: 'index',
//         component: () => import('@/views/clipboard/index'),
//         name: 'ClipboardDemo',
//         meta: { title: 'Clipboard', icon: 'clipboard' }
//       }
//     ]
//   },

//   {
//     path: 'external-link',
//     component: Layout,
//     children: [
//       {
//         path: 'https://github.com/PanJiaChen/vue-element-admin',
//         meta: { title: 'External Link', icon: 'link' }
//       }
//     ]
//   },

//   // 404 page must be placed at the end !!!
//   { path: '*', redirect: '/404', hidden: true }
// ]

export const asyncRoutes = [];

const createRouter = () =>
  new Router({
    // mode: 'history', // require service support
    scrollBehavior: () => ({ y: 0 }),
    routes: constantRoutes,
  });

const router = createRouter();

// Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465
export function resetRouter() {
  const newRouter = createRouter();
  router.matcher = newRouter.matcher; // reset router
}

export default router;
